$(function() {
	var ids = $("#productIds").val();
	if(ids != "") {
		var idsArr = ids.split(",");
		for(var i in idsArr) {
			var cheObj = $("#chk_" + idsArr[i]);
			if(cheObj && cheObj.length > 0) {
				cheObj.prop("checked", "checked");
			}
		}
	}
	if($("input[name='chk']").not("input:checked").length == 0 && $("input[name='chk']:checked").length > 0) {
		// 选中全选框
		$("#chkAll").prop("checked", "checked");
	}
});
/**
 * 点击“确定添加选中的商品”
 */
function addProduct() {
	setSelectedId();
	var ids = $("#productIds").val();
	if(ids == "") {
		layer.alert("请选择需要添加的商品！");
		return;
	}
	var index = layer.load(2);
	$.ajax({
		type: "post",
		url: path + "/presentActivityController/queryProductToJson",
		data:{ids: ids.split(",")},
		dataType: "json",
		success: function(data) {
			// 存储勾选的商品信息
			var rtv = [];
			for(var i in data) {
				var obj = {};
				obj.id = $.trim(data[i].id);
				obj.name = $.trim(data[i].baseInfo.name);
				var productProperty = data[i].productProperty;
				obj.prodType = getProductPropertyName(productProperty, "prodTypeOne") + "<" + getProductPropertyName(productProperty, "prodTypeTwo") + "<" + getProductPropertyName(productProperty, "prodTypeThree");
				obj.mercName = $.trim(data[i].merchant.mercName);
				obj.storeNum = $.trim(data[i].storeInfo.storeNum);
				obj.payOneMileage = $.trim(data[i].priceInfo.payOneMileage) + "公里";
				// 商品原价
				obj.payCostMileage = data[i].priceInfo.payCostMileage ? $.trim(data[i].priceInfo.payCostMileage) + "公里" : "";
				rtv.push(obj);
			}
			// 访问调用端的回调函数；返回勾选的商品信息，具体怎么处理取决于调用端的业务
			layer.close(index);
			var pWindowName = $("#pWindowName").val();
			parent.frames[pWindowName].getAddProductInfo(rtv);
			closeLayer();
		},
		error: function() {
			layer.alert("获取商品信息失败！");
			layer.close(index);
		}
	});
}

/**
 * 获取类别名称
 * @param productProperty
 * @param type
 * @returns
 */
function getProductPropertyName(productProperty, type) {
	try {
		return $.trim(productProperty[type].name);
	} catch (e){
		return "";
	}
}

/**
 * 查询
 * @returns {Boolean}
 */
function search() {
	var productId = $.trim($("#prodId").val());
	if(productId != "" && isNaN(productId)) {
		layer.alert("输入的商品编号有误，请重新输入！");
		return false;
    }
	$("#prodId").val(productId);
	$("#proName").val($.trim($("#proName").val()));
	setSelectedId();
    $("#query_product_list_form").submit();
}

/**
 * 重置查询条件
 */
function toIsEmpty() {
	$("#prodId").val("");
	$("#proName").val("");
	$("#merchantQoId").val("");
	$("#proType").val("");
	$("#brandId").val("");
}

/**
 * 全选或取消全选
 */
function selectAll() {
	if($("#chkAll").prop("checked")) {
		$("input[name='chk']").prop("checked", "checked")
	} else {
		$("input[name='chk']").prop("checked", "");
	}
}

/**
 * 赠品信息复选框被点击时触发
 * @param ckObj 被选中的复选框对象
 */
function ckClicked(ckObj) {
	if($(ckObj).prop("checked")) { // 选中
		if($("input[name='chk']").not("input:checked").length == 0) { // 所有复选框均被选中
			// 选中全选框
			$("#chkAll").prop("checked", "checked");
		}
	} else { // 取消选中
		$("#chkAll").prop("checked", "")
	}
}

/**
 * 设置被选中的数据行ID
 */
function setSelectedId() {
	var productIds = $("#productIds").val();
	var ids_arr = productIds == "" ? [] : productIds.split(",");
	// 被选中的复选框
	var cheRows = $("input[name='chk']:checked");
	if(cheRows && cheRows.length > 0) {
		cheRows.each(function(index, ele){
			var id = $(this).val();
			if(getIndex(ids_arr, id) == -1) {
				ids_arr.push(id);
			}
		});
	}
	
	// 未被选中的复选框
	var unCheRows = $("input[name='chk']").not("input:checked");
	if(unCheRows && unCheRows.length > 0) {
		unCheRows.each(function(index, ele){
			var id = $(this).val();
			var index = getIndex(ids_arr, id);
			if(index != -1) {
				// 移除元素
				ids_arr.splice(index, 1);
			}
		});
	}
	$("#productIds").val(ids_arr.join(","));
}

/**
 * 获取某个值在数组中的位置，找不到返回-1
 * @param arr
 * @param v
 * @returns {Boolean}
 */
function getIndex(arr, v) {
	for(var i in arr) {
		if(arr[i] == v) {
			return i;
		}
	}
	return -1;
}

/**
 * 关闭本窗口
 */
function closeLayer() {
	var index = parent.layer.getFrameIndex(window.name); // 先得到当前iframe层的索引
	parent.layer.close(index); // 再执行关闭
}